package com.wf.LeetCode;

/**
 * @author mpk
 * @since 2024/6/11 20:53:05
 */



 /*       1413. 逐步求和得到正数的最小值*/
/*给你一个整数数组 nums 。你可以选定任意的 正数 startValue 作为初始值。

        你需要从左到右遍历 nums 数组，并将 startValue 依次累加上 nums 数组中的值。

        请你在确保累加和始终大于等于 1 的前提下，选出一个最小的 正数 作为 startValue 。*/
public class MinStartValue {
    public static void main(String[] args) {
        int [] nums = {-5,-2,4,4,-2};
        System.out.println(minStartValue(nums));

    }

    public static int minStartValue(int[] nums) {


        int key = 0;
        int sum = 0;

            for (int i = 0; i < nums.length; i++) {

                sum+=nums[i];
                if (sum <= 0) {
                    int j=Math.abs(sum)+1;

                    if(key<j)
                    {
                        key=j;
                    }
                }

            }
            return key;
        }


}
